Locating Crashing Faults based on Crash Stack Traces
نویسندگان
چکیده
Software crashes due to its increasing complexity. Once a crash happens, a crash report could be sent to software developers for investigation upon user permission. Because of the large number of crash reports and limited information, debugging for crashes is often a tedious and labor-intensive task. In this paper, we propose a statistical fault localization framework to help developers locate functions that contain crashing faults. We generate the execution traces for the failing traces based on the crash stack, and the passing traces from normal executions. We form program spectra by combining generated passing and failing trace, and then apply statistical fault localization techniques such as Ochiai to locate the crashing faults. We also propose two heuristics to improve the fault localization performance. We evaluate our approach using the real-world Firefox crash report data. The results show that the performance of our method is promising. Our approach permits developers to locate 63.9% crashing faults by examining only 5% Firefox 3.6 functions in the spectra.
منابع مشابه
Attack Surface Prioritization with Crash Dump Stack Traces
Resource limitations often preclude security professionals from reviewing, testing, and fortifying an entire code base. Identifying metrics that enable prioritization of security efforts would help practitioners discover security issues more efficiently. Risk-Based Attack Surface Approximation (RASA) makes use of crash dump stack trace from a targeted software system to provide an estimated att...
متن کاملCores, Debugging, and Coverage
Debugging is difficult and costly, especially for production failures. To aid developers, we enhance core memory dumps produced by crashing applications with lightweight, tunable tracing. We propose two complementary forms of tracing, path traces and global coverage, and demonstrate that they can provide substantial postmortem analysis benefit at low cost. Recent work focuses on the interplay o...
متن کاملRisk-Based Attack Surface Approximation
In our increasingly interconnected world, software security is an increasingly important issue for development teams. However, there is too much security work to do for these teams as security needs have out-scaled security resources. To help prioritize security efforts, professionals use the attack surface of a system, or the sum of all paths for untrusted data into and out of a system, to ide...
متن کاملImproving the quality of APIs through the analysis of software crash reports
Modern programs depend on apis to implement a significant part of their functionality. Apart from the way developers use apis to build their software, the stability of these programs relies on the apis design and implementation. In this work, we evaluate the reliability of apis, by examining software telemetry data, in the form of stack traces, coming from Android application crashes. We got 4....
متن کاملCrashAutomata: an approach for the detection of duplicate crash reports based on generalizable automata
Crash reporting systems are useful tools that allow users to report system failures, subsequently contacting the appropriate support group for resolution. As a software system grows and becomes more versatile, the number of crashes increases. A large software company receives typically thousands of crashes a day, which make it difficult for software engineers to address these reports in a timel...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- CoRR
دوره abs/1404.4100 شماره
صفحات -
تاریخ انتشار 2014